class MyCalendarDetailModel {
  int? errcode;
  String? errmsg;
  Data? data;
  String? message;

  MyCalendarDetailModel({this.errcode, this.errmsg, this.data, this.message});

  MyCalendarDetailModel.fromJson(Map<String, dynamic> json) {
    errcode = json['errcode'];
    errmsg = json['errmsg'];
    data = json['data'] != null ? new Data.fromJson(json['data']) : null;
    message = json['message'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['errcode'] = this.errcode;
    data['errmsg'] = this.errmsg;
    if (this.data != null) {
      data['data'] = this.data!.toJson();
    }
    data['message'] = this.message;
    return data;
  }
}

class Data {
  String? name;
  List? userIds;
  List? tagIds;
  List? shareUserIds;
  int? userId;
  String? startTime;
  String? endTime;
  bool? allDay;
  int? duration;
  int? roomId;
  String? privacy;
  String? description;
  String? location;
  bool? recurrency;
  String? rruleType;
  int? day;
  List? weekDays;
  int? interval;
  int? count;
  String? until;
  String? endType;
  int? comments;
  List? tagNames;
  List? userNames;
  List? shareUserNames;

  Data(
      {this.name,
        this.userIds,
        this.tagIds,
        this.shareUserIds,
        this.userId,
        this.startTime,
        this.endTime,
        this.allDay,
        this.duration,
        this.roomId,
        this.privacy,
        this.description,
        this.location,
        this.recurrency,
        this.rruleType,
        this.day,
        this.weekDays,
        this.interval,
        this.count,
        this.until,
        this.endType,
        this.comments,
        this.tagNames,
        this.userNames,
        this.shareUserNames});

  Data.fromJson(Map<String, dynamic> json) {
    name = json['name'];
    userIds = json['user_ids'];
    tagIds = json['tag_ids'];
    shareUserIds = json['share_user_ids'];
    userId = json['user_id'];
    startTime = json['start_time'];
    endTime = json['end_time'];
    allDay = json['all_day'];
    duration = json['duration'];
    roomId = json['room_id'];
    privacy = json['privacy'];
    description = json['description'];
    location = json['location'];
    recurrency = json['recurrency'];
    rruleType = json['rrule_type'];
    day = json['day'];
    weekDays = json['week_days'];
    interval = json['interval'];
    count = json['count'];
    until = json['until'];
    endType = json['end_type'];
    comments = json['comments'];
    tagNames = json['tag_names'];
    userNames = json['user_names'];
    shareUserNames = json['share_user_names'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['name'] = this.name;
    data['user_ids'] = this.userIds;
    data['tag_ids'] = this.tagIds;
    data['share_user_ids'] = this.shareUserIds;
    data['user_id'] = this.userId;
    data['start_time'] = this.startTime;
    data['end_time'] = this.endTime;
    data['all_day'] = this.allDay;
    data['duration'] = this.duration;
    data['room_id'] = this.roomId;
    data['privacy'] = this.privacy;
    data['description'] = this.description;
    data['location'] = this.location;
    data['recurrency'] = this.recurrency;
    data['rrule_type'] = this.rruleType;
    data['day'] = this.day;
    data['week_days'] = this.weekDays;
    data['interval'] = this.interval;
    data['count'] = this.count;
    data['until'] = this.until;
    data['end_type'] = this.endType;
    data['comments'] = this.comments;
    data['tag_names'] = this.tagNames;
    data['user_names'] = this.userNames;
    data['share_user_names'] = this.shareUserNames;
    return data;
  }
}
